#ifndef JUGADOR_H
#define JUGADOR_H
#include "./Objetos/Estaticos/Cerdo.h"
#include "./Objetos/Estaticos/Catapulta.h"
#include "./Objetos/Estaticos/Monticulo.h"
#include "./Auxiliares/Velocidad.h"
class Jugador
{
private:
	Cerdo *cerdo;
	Catapulta *catapulta;
	Monticulo *monticulo;
	short ID;
	bool catapultaEstaViva;
	bool monticuloEstaVivo;
	bool cerdoEstaVivo;
	short puntos;
public:
	Jugador(short ID);
	virtual ~Jugador(void);
	// Le asigna al jugador un cerdo, catapulta y monticulo
	void definir(Cerdo *cerdo, Catapulta *catapulta, Monticulo* monticulo);
	// Lanza un huevo con velocidad v
	void lanzarHuevo(Velocidad *velocidad);
	// Al morir la catapulta, esta le informa a su jugador asociado mediante este metodo
	void catapultaMuere();
	// Al morir el monticulo, este le informa a su jugador asociado mediante este metodo
	void monticuloMuere();
	void cerdoMuere();
	
	short getId();
	short getPuntos();
	// esta vivo si el cerdo y el monticulo estan vivos
	bool estaVivo();
	void addPuntos(short p);
};

#endif
